package com.ruoyi.system.domain.vo;

import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.common.utils.bean.BeanUtils;
import com.ruoyi.system.domain.ProcessCheck;
import lombok.Data;

import java.util.Arrays;
import java.util.List;


/**
 * 流程审核视图对象 process_check
 *
 * @author ruoyi
 * @date 2024-04-10
 */
@Data
public class ProcessCheckVo {

    private static final long serialVersionUID = 1L;

    /**
     *
     */
    private Long id;

    /**
     * 流程id
     */
    private String processId;

    /**
     * 状态0:待审核1：通过2：驳回
     */
    private String state;

    /**
     * 抄送人id列表
     */
    private List<Integer> copyFor;

    /**
     * 流程类型

        项目转化审批：xmzh
        成果交付审批:cgjf
        归档审批:gd
        复盘审批:fp
        日报评审:rb
        周报评审:zb
        月报评审:yb
     */


    private String processType;


    public static ProcessCheckVo build(ProcessCheck processCheck) {
        ProcessCheckVo vo = new ProcessCheckVo();
        BeanUtils.copyProperties(processCheck, vo , "copyFor");
        List<String> list = Arrays.asList(processCheck.getCopyFor().split(","));
        vo.setCopyFor(StringUtils.isEmpty(processCheck.getCopyFor())? null:StringUtils.convertStringListToIntegerList(list));
        return vo;
    }
}
